#ifndef CUBEBOX_HPP
#define CUBEBOX_HPP

#include <vector>
#include <exception>
#include <QVector3D>

#define CUBEBOX_NB_POLY 10

class CubeBox
{
private:
    //std::vector<QVector3D> cb;
    float vertices[8*3];
    float normales[CUBEBOX_NB_POLY*3];
    int indices[CUBEBOX_NB_POLY*3];
    float colors[CUBEBOX_NB_POLY*3];

    float color1[3];
    float color2[3];
    float defaultColor[3];

public:
    CubeBox();
    CubeBox(float s, QVector3D center = QVector3D(0,0,0));
    inline float* getVertices() {return vertices;}
    inline int* getIndices() {return indices;}
    inline float* getColors() {return colors;}
    inline float* getNormales() {return normales;}
    void setDefaultColor(float r, float g, float b);
    void setColor1(float r, float g, float b);
    void setColor2(float r, float g, float b);
    void drawCubeBox();
};
#endif // CUBEBOX_HPP
